| Junio C Hamano | 944ce25 | 2018-05-30 22:25:26 | [diff] [blame] | 1 | <?xml version="1.0" encoding="UTF-8"?> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" | 
|  | 3 | "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | 
|  | 4 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> | 
|  | 5 | <head> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 6 | <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> | 
| Junio C Hamano | 944ce25 | 2018-05-30 22:25:26 | [diff] [blame] | 7 | <meta name="generator" content="AsciiDoc 8.6.10" /> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 8 | <title>revision walking API</title> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 9 | <style type="text/css"> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 10 | /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ | 
|  | 11 |  | 
|  | 12 | /* Default font. */ | 
|  | 13 | body { | 
|  | 14 | font-family: Georgia,serif; | 
|  | 15 | } | 
|  | 16 |  | 
|  | 17 | /* Title font. */ | 
|  | 18 | h1, h2, h3, h4, h5, h6, | 
|  | 19 | div.title, caption.title, | 
|  | 20 | thead, p.table.header, | 
|  | 21 | #toctitle, | 
|  | 22 | #author, #revnumber, #revdate, #revremark, | 
|  | 23 | #footer { | 
|  | 24 | font-family: Arial,Helvetica,sans-serif; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 25 | } | 
|  | 26 |  | 
|  | 27 | body { | 
|  | 28 | margin: 1em 5% 1em 5%; | 
|  | 29 | } | 
|  | 30 |  | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 31 | a { | 
|  | 32 | color: blue; | 
|  | 33 | text-decoration: underline; | 
|  | 34 | } | 
|  | 35 | a:visited { | 
|  | 36 | color: fuchsia; | 
|  | 37 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 38 |  | 
|  | 39 | em { | 
|  | 40 | font-style: italic; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 41 | color: navy; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 42 | } | 
|  | 43 |  | 
|  | 44 | strong { | 
|  | 45 | font-weight: bold; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 46 | color: #083194; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 47 | } | 
|  | 48 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 49 | h1, h2, h3, h4, h5, h6 { | 
|  | 50 | color: #527bbd; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 51 | margin-top: 1.2em; | 
|  | 52 | margin-bottom: 0.5em; | 
|  | 53 | line-height: 1.3; | 
|  | 54 | } | 
|  | 55 |  | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 56 | h1, h2, h3 { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 57 | border-bottom: 2px solid silver; | 
|  | 58 | } | 
|  | 59 | h2 { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 60 | padding-top: 0.5em; | 
|  | 61 | } | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 62 | h3 { | 
|  | 63 | float: left; | 
|  | 64 | } | 
|  | 65 | h3 + * { | 
|  | 66 | clear: left; | 
|  | 67 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 68 | h5 { | 
|  | 69 | font-size: 1.0em; | 
|  | 70 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 71 |  | 
|  | 72 | div.sectionbody { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 73 | margin-left: 0; | 
|  | 74 | } | 
|  | 75 |  | 
|  | 76 | hr { | 
|  | 77 | border: 1px solid silver; | 
|  | 78 | } | 
|  | 79 |  | 
|  | 80 | p { | 
|  | 81 | margin-top: 0.5em; | 
|  | 82 | margin-bottom: 0.5em; | 
|  | 83 | } | 
|  | 84 |  | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 85 | ul, ol, li > p { | 
|  | 86 | margin-top: 0; | 
|  | 87 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 88 | ul > li { color: #aaa; } | 
|  | 89 | ul > li > * { color: black; } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 90 |  | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 91 | .monospaced, code, pre { | 
|  | 92 | font-family: "Courier New", Courier, monospace; | 
|  | 93 | font-size: inherit; | 
|  | 94 | color: navy; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 95 | padding: 0; | 
|  | 96 | margin: 0; | 
|  | 97 | } | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 98 | pre { | 
|  | 99 | white-space: pre-wrap; | 
|  | 100 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 101 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 102 | #author { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 103 | color: #527bbd; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 104 | font-weight: bold; | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 105 | font-size: 1.1em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 106 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 107 | #email { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 108 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 109 | #revnumber, #revdate, #revremark { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 110 | } | 
|  | 111 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 112 | #footer { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 113 | font-size: small; | 
|  | 114 | border-top: 2px solid silver; | 
|  | 115 | padding-top: 0.5em; | 
|  | 116 | margin-top: 4.0em; | 
|  | 117 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 118 | #footer-text { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 119 | float: left; | 
|  | 120 | padding-bottom: 0.5em; | 
|  | 121 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 122 | #footer-badges { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 123 | float: right; | 
|  | 124 | padding-bottom: 0.5em; | 
|  | 125 | } | 
|  | 126 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 127 | #preamble { | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 128 | margin-top: 1.5em; | 
|  | 129 | margin-bottom: 1.5em; | 
|  | 130 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 131 | div.imageblock, div.exampleblock, div.verseblock, | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 132 | div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, | 
|  | 133 | div.admonitionblock { | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 134 | margin-top: 1.0em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 135 | margin-bottom: 1.5em; | 
|  | 136 | } | 
|  | 137 | div.admonitionblock { | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 138 | margin-top: 2.0em; | 
|  | 139 | margin-bottom: 2.0em; | 
|  | 140 | margin-right: 10%; | 
|  | 141 | color: #606060; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 142 | } | 
|  | 143 |  | 
|  | 144 | div.content { /* Block element content. */ | 
|  | 145 | padding: 0; | 
|  | 146 | } | 
|  | 147 |  | 
|  | 148 | /* Block element titles. */ | 
|  | 149 | div.title, caption.title { | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 150 | color: #527bbd; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 151 | font-weight: bold; | 
|  | 152 | text-align: left; | 
|  | 153 | margin-top: 1.0em; | 
|  | 154 | margin-bottom: 0.5em; | 
|  | 155 | } | 
|  | 156 | div.title + * { | 
|  | 157 | margin-top: 0; | 
|  | 158 | } | 
|  | 159 |  | 
|  | 160 | td div.title:first-child { | 
|  | 161 | margin-top: 0.0em; | 
|  | 162 | } | 
|  | 163 | div.content div.title:first-child { | 
|  | 164 | margin-top: 0.0em; | 
|  | 165 | } | 
|  | 166 | div.content + div.title { | 
|  | 167 | margin-top: 0.0em; | 
|  | 168 | } | 
|  | 169 |  | 
|  | 170 | div.sidebarblock > div.content { | 
|  | 171 | background: #ffffee; | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 172 | border: 1px solid #dddddd; | 
|  | 173 | border-left: 4px solid #f0f0f0; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 174 | padding: 0.5em; | 
|  | 175 | } | 
|  | 176 |  | 
|  | 177 | div.listingblock > div.content { | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 178 | border: 1px solid #dddddd; | 
|  | 179 | border-left: 5px solid #f0f0f0; | 
|  | 180 | background: #f8f8f8; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 181 | padding: 0.5em; | 
|  | 182 | } | 
|  | 183 |  | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 184 | div.quoteblock, div.verseblock { | 
|  | 185 | padding-left: 1.0em; | 
|  | 186 | margin-left: 1.0em; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 187 | margin-right: 10%; | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 188 | border-left: 5px solid #f0f0f0; | 
|  | 189 | color: #888; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 190 | } | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 191 |  | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 192 | div.quoteblock > div.attribution { | 
|  | 193 | padding-top: 0.5em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 194 | text-align: right; | 
|  | 195 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 196 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 197 | div.verseblock > pre.content { | 
|  | 198 | font-family: inherit; | 
|  | 199 | font-size: inherit; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 200 | } | 
|  | 201 | div.verseblock > div.attribution { | 
|  | 202 | padding-top: 0.75em; | 
|  | 203 | text-align: left; | 
|  | 204 | } | 
|  | 205 | /* DEPRECATED: Pre version 8.2.7 verse style literal block. */ | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 206 | div.verseblock + div.attribution { | 
|  | 207 | text-align: left; | 
|  | 208 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 209 |  | 
|  | 210 | div.admonitionblock .icon { | 
|  | 211 | vertical-align: top; | 
|  | 212 | font-size: 1.1em; | 
|  | 213 | font-weight: bold; | 
|  | 214 | text-decoration: underline; | 
|  | 215 | color: #527bbd; | 
|  | 216 | padding-right: 0.5em; | 
|  | 217 | } | 
|  | 218 | div.admonitionblock td.content { | 
|  | 219 | padding-left: 0.5em; | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 220 | border-left: 3px solid #dddddd; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 221 | } | 
|  | 222 |  | 
|  | 223 | div.exampleblock > div.content { | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 224 | border-left: 3px solid #dddddd; | 
|  | 225 | padding-left: 0.5em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 226 | } | 
|  | 227 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 228 | div.imageblock div.content { padding-left: 0; } | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 229 | span.image img { border-style: none; vertical-align: text-bottom; } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 230 | a.image:visited { color: white; } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 231 |  | 
|  | 232 | dl { | 
|  | 233 | margin-top: 0.8em; | 
|  | 234 | margin-bottom: 0.8em; | 
|  | 235 | } | 
|  | 236 | dt { | 
|  | 237 | margin-top: 0.5em; | 
|  | 238 | margin-bottom: 0; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 239 | font-style: normal; | 
|  | 240 | color: navy; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 241 | } | 
|  | 242 | dd > *:first-child { | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 243 | margin-top: 0.1em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 244 | } | 
|  | 245 |  | 
|  | 246 | ul, ol { | 
|  | 247 | list-style-position: outside; | 
|  | 248 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 249 | ol.arabic { | 
|  | 250 | list-style-type: decimal; | 
|  | 251 | } | 
|  | 252 | ol.loweralpha { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 253 | list-style-type: lower-alpha; | 
|  | 254 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 255 | ol.upperalpha { | 
|  | 256 | list-style-type: upper-alpha; | 
|  | 257 | } | 
|  | 258 | ol.lowerroman { | 
|  | 259 | list-style-type: lower-roman; | 
|  | 260 | } | 
|  | 261 | ol.upperroman { | 
|  | 262 | list-style-type: upper-roman; | 
|  | 263 | } | 
|  | 264 |  | 
|  | 265 | div.compact ul, div.compact ol, | 
|  | 266 | div.compact p, div.compact p, | 
|  | 267 | div.compact div, div.compact div { | 
|  | 268 | margin-top: 0.1em; | 
|  | 269 | margin-bottom: 0.1em; | 
|  | 270 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 271 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 272 | tfoot { | 
|  | 273 | font-weight: bold; | 
|  | 274 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 275 | td > div.verse { | 
|  | 276 | white-space: pre; | 
|  | 277 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 278 |  | 
|  | 279 | div.hdlist { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 280 | margin-top: 0.8em; | 
|  | 281 | margin-bottom: 0.8em; | 
|  | 282 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 283 | div.hdlist tr { | 
|  | 284 | padding-bottom: 15px; | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 285 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 286 | dt.hdlist1.strong, td.hdlist1.strong { | 
|  | 287 | font-weight: bold; | 
|  | 288 | } | 
|  | 289 | td.hdlist1 { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 290 | vertical-align: top; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 291 | font-style: normal; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 292 | padding-right: 0.8em; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 293 | color: navy; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 294 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 295 | td.hdlist2 { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 296 | vertical-align: top; | 
|  | 297 | } | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 298 | div.hdlist.compact tr { | 
|  | 299 | margin: 0; | 
|  | 300 | padding-bottom: 0; | 
|  | 301 | } | 
|  | 302 |  | 
|  | 303 | .comment { | 
|  | 304 | background: yellow; | 
|  | 305 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 306 |  | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 307 | .footnote, .footnoteref { | 
|  | 308 | font-size: 0.8em; | 
|  | 309 | } | 
|  | 310 |  | 
|  | 311 | span.footnote, span.footnoteref { | 
|  | 312 | vertical-align: super; | 
|  | 313 | } | 
|  | 314 |  | 
|  | 315 | #footnotes { | 
|  | 316 | margin: 20px 0 20px 0; | 
|  | 317 | padding: 7px 0 0 0; | 
|  | 318 | } | 
|  | 319 |  | 
|  | 320 | #footnotes div.footnote { | 
|  | 321 | margin: 0 0 5px 0; | 
|  | 322 | } | 
|  | 323 |  | 
|  | 324 | #footnotes hr { | 
|  | 325 | border: none; | 
|  | 326 | border-top: 1px solid silver; | 
|  | 327 | height: 1px; | 
|  | 328 | text-align: left; | 
|  | 329 | margin-left: 0; | 
|  | 330 | width: 20%; | 
|  | 331 | min-width: 100px; | 
|  | 332 | } | 
|  | 333 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 334 | div.colist td { | 
|  | 335 | padding-right: 0.5em; | 
|  | 336 | padding-bottom: 0.3em; | 
|  | 337 | vertical-align: top; | 
|  | 338 | } | 
|  | 339 | div.colist td img { | 
|  | 340 | margin-top: 0.3em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 341 | } | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 342 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 343 | @media print { | 
|  | 344 | #footer-badges { display: none; } | 
|  | 345 | } | 
|  | 346 |  | 
|  | 347 | #toc { | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 348 | margin-bottom: 2.5em; | 
|  | 349 | } | 
|  | 350 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 351 | #toctitle { | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 352 | color: #527bbd; | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 353 | font-size: 1.1em; | 
|  | 354 | font-weight: bold; | 
|  | 355 | margin-top: 1.0em; | 
|  | 356 | margin-bottom: 0.1em; | 
|  | 357 | } | 
|  | 358 |  | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 359 | div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 360 | margin-top: 0; | 
|  | 361 | margin-bottom: 0; | 
|  | 362 | } | 
|  | 363 | div.toclevel2 { | 
|  | 364 | margin-left: 2em; | 
|  | 365 | font-size: 0.9em; | 
|  | 366 | } | 
|  | 367 | div.toclevel3 { | 
|  | 368 | margin-left: 4em; | 
|  | 369 | font-size: 0.9em; | 
|  | 370 | } | 
|  | 371 | div.toclevel4 { | 
|  | 372 | margin-left: 6em; | 
|  | 373 | font-size: 0.9em; | 
|  | 374 | } | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 375 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 376 | span.aqua { color: aqua; } | 
|  | 377 | span.black { color: black; } | 
|  | 378 | span.blue { color: blue; } | 
|  | 379 | span.fuchsia { color: fuchsia; } | 
|  | 380 | span.gray { color: gray; } | 
|  | 381 | span.green { color: green; } | 
|  | 382 | span.lime { color: lime; } | 
|  | 383 | span.maroon { color: maroon; } | 
|  | 384 | span.navy { color: navy; } | 
|  | 385 | span.olive { color: olive; } | 
|  | 386 | span.purple { color: purple; } | 
|  | 387 | span.red { color: red; } | 
|  | 388 | span.silver { color: silver; } | 
|  | 389 | span.teal { color: teal; } | 
|  | 390 | span.white { color: white; } | 
|  | 391 | span.yellow { color: yellow; } | 
|  | 392 |  | 
|  | 393 | span.aqua-background { background: aqua; } | 
|  | 394 | span.black-background { background: black; } | 
|  | 395 | span.blue-background { background: blue; } | 
|  | 396 | span.fuchsia-background { background: fuchsia; } | 
|  | 397 | span.gray-background { background: gray; } | 
|  | 398 | span.green-background { background: green; } | 
|  | 399 | span.lime-background { background: lime; } | 
|  | 400 | span.maroon-background { background: maroon; } | 
|  | 401 | span.navy-background { background: navy; } | 
|  | 402 | span.olive-background { background: olive; } | 
|  | 403 | span.purple-background { background: purple; } | 
|  | 404 | span.red-background { background: red; } | 
|  | 405 | span.silver-background { background: silver; } | 
|  | 406 | span.teal-background { background: teal; } | 
|  | 407 | span.white-background { background: white; } | 
|  | 408 | span.yellow-background { background: yellow; } | 
|  | 409 |  | 
|  | 410 | span.big { font-size: 2em; } | 
|  | 411 | span.small { font-size: 0.6em; } | 
|  | 412 |  | 
|  | 413 | span.underline { text-decoration: underline; } | 
|  | 414 | span.overline { text-decoration: overline; } | 
|  | 415 | span.line-through { text-decoration: line-through; } | 
|  | 416 |  | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 417 | div.unbreakable { page-break-inside: avoid; } | 
|  | 418 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 419 |  | 
|  | 420 | /* | 
|  | 421 | * xhtml11 specific | 
|  | 422 | * | 
|  | 423 | * */ | 
|  | 424 |  | 
|  | 425 | div.tableblock { | 
|  | 426 | margin-top: 1.0em; | 
|  | 427 | margin-bottom: 1.5em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 428 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 429 | div.tableblock > table { | 
|  | 430 | border: 3px solid #527bbd; | 
|  | 431 | } | 
|  | 432 | thead, p.table.header { | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 433 | font-weight: bold; | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 434 | color: #527bbd; | 
|  | 435 | } | 
|  | 436 | p.table { | 
|  | 437 | margin-top: 0; | 
|  | 438 | } | 
|  | 439 | /* Because the table frame attribute is overriden by CSS in most browsers. */ | 
|  | 440 | div.tableblock > table[frame="void"] { | 
|  | 441 | border-style: none; | 
|  | 442 | } | 
|  | 443 | div.tableblock > table[frame="hsides"] { | 
|  | 444 | border-left-style: none; | 
|  | 445 | border-right-style: none; | 
|  | 446 | } | 
|  | 447 | div.tableblock > table[frame="vsides"] { | 
|  | 448 | border-top-style: none; | 
|  | 449 | border-bottom-style: none; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 450 | } | 
|  | 451 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 452 |  | 
|  | 453 | /* | 
|  | 454 | * html5 specific | 
|  | 455 | * | 
|  | 456 | * */ | 
|  | 457 |  | 
|  | 458 | table.tableblock { | 
|  | 459 | margin-top: 1.0em; | 
|  | 460 | margin-bottom: 1.5em; | 
|  | 461 | } | 
|  | 462 | thead, p.tableblock.header { | 
|  | 463 | font-weight: bold; | 
|  | 464 | color: #527bbd; | 
|  | 465 | } | 
|  | 466 | p.tableblock { | 
|  | 467 | margin-top: 0; | 
|  | 468 | } | 
|  | 469 | table.tableblock { | 
|  | 470 | border-width: 3px; | 
|  | 471 | border-spacing: 0px; | 
|  | 472 | border-style: solid; | 
|  | 473 | border-color: #527bbd; | 
|  | 474 | border-collapse: collapse; | 
|  | 475 | } | 
|  | 476 | th.tableblock, td.tableblock { | 
|  | 477 | border-width: 1px; | 
|  | 478 | padding: 4px; | 
|  | 479 | border-style: solid; | 
|  | 480 | border-color: #527bbd; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 481 | } | 
|  | 482 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 483 | table.tableblock.frame-topbot { | 
|  | 484 | border-left-style: hidden; | 
|  | 485 | border-right-style: hidden; | 
|  | 486 | } | 
|  | 487 | table.tableblock.frame-sides { | 
|  | 488 | border-top-style: hidden; | 
|  | 489 | border-bottom-style: hidden; | 
|  | 490 | } | 
|  | 491 | table.tableblock.frame-none { | 
|  | 492 | border-style: hidden; | 
|  | 493 | } | 
|  | 494 |  | 
|  | 495 | th.tableblock.halign-left, td.tableblock.halign-left { | 
|  | 496 | text-align: left; | 
|  | 497 | } | 
|  | 498 | th.tableblock.halign-center, td.tableblock.halign-center { | 
|  | 499 | text-align: center; | 
|  | 500 | } | 
|  | 501 | th.tableblock.halign-right, td.tableblock.halign-right { | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 502 | text-align: right; | 
|  | 503 | } | 
|  | 504 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 505 | th.tableblock.valign-top, td.tableblock.valign-top { | 
|  | 506 | vertical-align: top; | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 507 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 508 | th.tableblock.valign-middle, td.tableblock.valign-middle { | 
|  | 509 | vertical-align: middle; | 
|  | 510 | } | 
|  | 511 | th.tableblock.valign-bottom, td.tableblock.valign-bottom { | 
|  | 512 | vertical-align: bottom; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 513 | } | 
|  | 514 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 515 |  | 
|  | 516 | /* | 
|  | 517 | * manpage specific | 
|  | 518 | * | 
|  | 519 | * */ | 
|  | 520 |  | 
|  | 521 | body.manpage h1 { | 
|  | 522 | padding-top: 0.5em; | 
|  | 523 | padding-bottom: 0.5em; | 
|  | 524 | border-top: 2px solid silver; | 
|  | 525 | border-bottom: 2px solid silver; | 
|  | 526 | } | 
|  | 527 | body.manpage h2 { | 
|  | 528 | border-style: none; | 
|  | 529 | } | 
|  | 530 | body.manpage div.sectionbody { | 
|  | 531 | margin-left: 3em; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 532 | } | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 533 |  | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 534 | @media print { | 
|  | 535 | body.manpage div#toc { display: none; } | 
|  | 536 | } | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 537 |  | 
|  | 538 |  | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 539 | </style> | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 540 | <script type="text/javascript"> | 
|  | 541 | /*<![CDATA[*/ | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 542 | var asciidoc = { // Namespace. | 
|  | 543 |  | 
|  | 544 | ///////////////////////////////////////////////////////////////////// | 
|  | 545 | // Table Of Contents generator | 
|  | 546 | ///////////////////////////////////////////////////////////////////// | 
|  | 547 |  | 
|  | 548 | /* Author: Mihai Bazon, September 2002 | 
|  | 549 | * http://students.infoiasi.ro/~mishoo | 
|  | 550 | * | 
|  | 551 | * Table Of Content generator | 
|  | 552 | * Version: 0.4 | 
|  | 553 | * | 
|  | 554 | * Feel free to use this script under the terms of the GNU General Public | 
|  | 555 | * License, as long as you do not remove or alter this notice. | 
|  | 556 | */ | 
|  | 557 |  | 
|  | 558 | /* modified by Troy D. Hanson, September 2006. License: GPL */ | 
|  | 559 | /* modified by Stuart Rackham, 2006, 2009. License: GPL */ | 
|  | 560 |  | 
|  | 561 | // toclevels = 1..4. | 
|  | 562 | toc: function (toclevels) { | 
|  | 563 |  | 
|  | 564 | function getText(el) { | 
|  | 565 | var text = ""; | 
|  | 566 | for (var i = el.firstChild; i != null; i = i.nextSibling) { | 
|  | 567 | if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants. | 
|  | 568 | text += i.data; | 
|  | 569 | else if (i.firstChild != null) | 
|  | 570 | text += getText(i); | 
|  | 571 | } | 
|  | 572 | return text; | 
|  | 573 | } | 
|  | 574 |  | 
|  | 575 | function TocEntry(el, text, toclevel) { | 
|  | 576 | this.element = el; | 
|  | 577 | this.text = text; | 
|  | 578 | this.toclevel = toclevel; | 
|  | 579 | } | 
|  | 580 |  | 
|  | 581 | function tocEntries(el, toclevels) { | 
|  | 582 | var result = new Array; | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 583 | var re = new RegExp('[hH]([1-'+(toclevels+1)+'])'); | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 584 | // Function that scans the DOM tree for header elements (the DOM2 | 
|  | 585 | // nodeIterator API would be a better technique but not supported by all | 
|  | 586 | // browsers). | 
|  | 587 | var iterate = function (el) { | 
|  | 588 | for (var i = el.firstChild; i != null; i = i.nextSibling) { | 
|  | 589 | if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { | 
|  | 590 | var mo = re.exec(i.tagName); | 
|  | 591 | if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { | 
|  | 592 | result[result.length] = new TocEntry(i, getText(i), mo[1]-1); | 
|  | 593 | } | 
|  | 594 | iterate(i); | 
|  | 595 | } | 
|  | 596 | } | 
|  | 597 | } | 
|  | 598 | iterate(el); | 
|  | 599 | return result; | 
|  | 600 | } | 
|  | 601 |  | 
|  | 602 | var toc = document.getElementById("toc"); | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 603 | if (!toc) { | 
|  | 604 | return; | 
|  | 605 | } | 
|  | 606 |  | 
|  | 607 | // Delete existing TOC entries in case we're reloading the TOC. | 
|  | 608 | var tocEntriesToRemove = []; | 
|  | 609 | var i; | 
|  | 610 | for (i = 0; i < toc.childNodes.length; i++) { | 
|  | 611 | var entry = toc.childNodes[i]; | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 612 | if (entry.nodeName.toLowerCase() == 'div' | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 613 | && entry.getAttribute("class") | 
|  | 614 | && entry.getAttribute("class").match(/^toclevel/)) | 
|  | 615 | tocEntriesToRemove.push(entry); | 
|  | 616 | } | 
|  | 617 | for (i = 0; i < tocEntriesToRemove.length; i++) { | 
|  | 618 | toc.removeChild(tocEntriesToRemove[i]); | 
|  | 619 | } | 
|  | 620 |  | 
|  | 621 | // Rebuild TOC entries. | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 622 | var entries = tocEntries(document.getElementById("content"), toclevels); | 
|  | 623 | for (var i = 0; i < entries.length; ++i) { | 
|  | 624 | var entry = entries[i]; | 
|  | 625 | if (entry.element.id == "") | 
|  | 626 | entry.element.id = "_toc_" + i; | 
|  | 627 | var a = document.createElement("a"); | 
|  | 628 | a.href = "#" + entry.element.id; | 
|  | 629 | a.appendChild(document.createTextNode(entry.text)); | 
|  | 630 | var div = document.createElement("div"); | 
|  | 631 | div.appendChild(a); | 
|  | 632 | div.className = "toclevel" + entry.toclevel; | 
|  | 633 | toc.appendChild(div); | 
|  | 634 | } | 
|  | 635 | if (entries.length == 0) | 
|  | 636 | toc.parentNode.removeChild(toc); | 
|  | 637 | }, | 
|  | 638 |  | 
|  | 639 |  | 
|  | 640 | ///////////////////////////////////////////////////////////////////// | 
|  | 641 | // Footnotes generator | 
|  | 642 | ///////////////////////////////////////////////////////////////////// | 
|  | 643 |  | 
|  | 644 | /* Based on footnote generation code from: | 
|  | 645 | * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html | 
|  | 646 | */ | 
|  | 647 |  | 
|  | 648 | footnotes: function () { | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 649 | // Delete existing footnote entries in case we're reloading the footnodes. | 
|  | 650 | var i; | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 651 | var noteholder = document.getElementById("footnotes"); | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 652 | if (!noteholder) { | 
|  | 653 | return; | 
|  | 654 | } | 
|  | 655 | var entriesToRemove = []; | 
|  | 656 | for (i = 0; i < noteholder.childNodes.length; i++) { | 
|  | 657 | var entry = noteholder.childNodes[i]; | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 658 | if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 659 | entriesToRemove.push(entry); | 
|  | 660 | } | 
|  | 661 | for (i = 0; i < entriesToRemove.length; i++) { | 
|  | 662 | noteholder.removeChild(entriesToRemove[i]); | 
|  | 663 | } | 
|  | 664 |  | 
|  | 665 | // Rebuild footnote entries. | 
|  | 666 | var cont = document.getElementById("content"); | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 667 | var spans = cont.getElementsByTagName("span"); | 
|  | 668 | var refs = {}; | 
|  | 669 | var n = 0; | 
|  | 670 | for (i=0; i<spans.length; i++) { | 
|  | 671 | if (spans[i].className == "footnote") { | 
|  | 672 | n++; | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 673 | var note = spans[i].getAttribute("data-note"); | 
|  | 674 | if (!note) { | 
|  | 675 | // Use [\s\S] in place of . so multi-line matches work. | 
|  | 676 | // Because JavaScript has no s (dotall) regex flag. | 
|  | 677 | note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; | 
|  | 678 | spans[i].innerHTML = | 
|  | 679 | "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + | 
|  | 680 | "' title='View footnote' class='footnote'>" + n + "</a>]"; | 
|  | 681 | spans[i].setAttribute("data-note", note); | 
|  | 682 | } | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 683 | noteholder.innerHTML += | 
|  | 684 | "<div class='footnote' id='_footnote_" + n + "'>" + | 
|  | 685 | "<a href='#_footnoteref_" + n + "' title='Return to text'>" + | 
|  | 686 | n + "</a>. " + note + "</div>"; | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 687 | var id =spans[i].getAttribute("id"); | 
|  | 688 | if (id != null) refs["#"+id] = n; | 
|  | 689 | } | 
|  | 690 | } | 
|  | 691 | if (n == 0) | 
|  | 692 | noteholder.parentNode.removeChild(noteholder); | 
|  | 693 | else { | 
|  | 694 | // Process footnoterefs. | 
|  | 695 | for (i=0; i<spans.length; i++) { | 
|  | 696 | if (spans[i].className == "footnoteref") { | 
|  | 697 | var href = spans[i].getElementsByTagName("a")[0].getAttribute("href"); | 
|  | 698 | href = href.match(/#.*/)[0]; // Because IE return full URL. | 
|  | 699 | n = refs[href]; | 
|  | 700 | spans[i].innerHTML = | 
|  | 701 | "[<a href='#_footnote_" + n + | 
|  | 702 | "' title='View footnote' class='footnote'>" + n + "</a>]"; | 
|  | 703 | } | 
|  | 704 | } | 
|  | 705 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 706 | }, | 
|  | 707 |  | 
|  | 708 | install: function(toclevels) { | 
|  | 709 | var timerId; | 
|  | 710 |  | 
|  | 711 | function reinstall() { | 
|  | 712 | asciidoc.footnotes(); | 
|  | 713 | if (toclevels) { | 
|  | 714 | asciidoc.toc(toclevels); | 
|  | 715 | } | 
|  | 716 | } | 
|  | 717 |  | 
|  | 718 | function reinstallAndRemoveTimer() { | 
|  | 719 | clearInterval(timerId); | 
|  | 720 | reinstall(); | 
|  | 721 | } | 
|  | 722 |  | 
|  | 723 | timerId = setInterval(reinstall, 500); | 
|  | 724 | if (document.addEventListener) | 
|  | 725 | document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); | 
|  | 726 | else | 
|  | 727 | window.onload = reinstallAndRemoveTimer; | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 728 | } | 
|  | 729 |  | 
|  | 730 | } | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 731 | asciidoc.install(); | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 732 | /*]]>*/ | 
|  | 733 | </script> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 734 | </head> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 735 | <body class="article"> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 736 | <div id="header"> | 
|  | 737 | <h1>revision walking API</h1> | 
|  | 738 | </div> | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 739 | <div id="content"> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 740 | <div id="preamble"> | 
|  | 741 | <div class="sectionbody"> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 742 | <div class="paragraph"><p>The revision walking API offers functions to build a list of revisions | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 743 | and then iterate over that list.</p></div> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 744 | </div> | 
|  | 745 | </div> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 746 | <div class="sect1"> | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 747 | <h2 id="_calling_sequence">Calling sequence</h2> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 748 | <div class="sectionbody"> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 749 | <div class="paragraph"><p>The walking API has a given calling sequence: first you need to | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 750 | initialize a rev_info structure, then add revisions to control what kind | 
|  | 751 | of revision list do you want to get, finally you can iterate over the | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 752 | revision list.</p></div> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 753 | </div> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 754 | </div> | 
|  | 755 | <div class="sect1"> | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 756 | <h2 id="_functions">Functions</h2> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 757 | <div class="sectionbody"> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 758 | <div class="dlist"><dl> | 
|  | 759 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 760 | <code>init_revisions</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 761 | </dt> | 
|  | 762 | <dd> | 
|  | 763 | <p> | 
|  | 764 | Initialize a rev_info structure with default values. The second | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 765 | parameter may be NULL or can be prefix path, and then the <code>.prefix</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 766 | variable will be set to it. This is typically the first function you | 
|  | 767 | want to call when you want to deal with a revision list. After calling | 
|  | 768 | this function, you are free to customize options, like set | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 769 | <code>.ignore_merges</code> to 0 if you don’t want to ignore merges, and so on. See | 
|  | 770 | <code>revision.h</code> for a complete list of available options. | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 771 | </p> | 
|  | 772 | </dd> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 773 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 774 | <code>add_pending_object</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 775 | </dt> | 
|  | 776 | <dd> | 
|  | 777 | <p> | 
|  | 778 | This function can be used if you want to add commit objects as revision | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 779 | information. You can use the <code>UNINTERESTING</code> object flag to indicate if | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 780 | you want to include or exclude the given commit (and commits reachable | 
|  | 781 | from the given commit) from the revision list. | 
|  | 782 | </p> | 
|  | 783 | <div class="admonitionblock"> | 
|  | 784 | <table><tr> | 
|  | 785 | <td class="icon"> | 
|  | 786 | <div class="title">Note</div> | 
|  | 787 | </td> | 
|  | 788 | <td class="content">If you have the commits as a string list then you probably want to | 
|  | 789 | use setup_revisions(), instead of parsing each string and using this | 
|  | 790 | function.</td> | 
|  | 791 | </tr></table> | 
|  | 792 | </div> | 
|  | 793 | </dd> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 794 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 795 | <code>setup_revisions</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 796 | </dt> | 
|  | 797 | <dd> | 
|  | 798 | <p> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 799 | Parse revision information, filling in the <code>rev_info</code> structure, and | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 800 | removing the used arguments from the argument list. Returns the number | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 801 | of arguments left that weren’t recognized, which are also moved to the | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 802 | head of the argument list. The last parameter is used in case no | 
|  | 803 | parameter given by the first two arguments. | 
|  | 804 | </p> | 
|  | 805 | </dd> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 806 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 807 | <code>prepare_revision_walk</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 808 | </dt> | 
|  | 809 | <dd> | 
|  | 810 | <p> | 
|  | 811 | Prepares the rev_info structure for a walk. You should check if it | 
|  | 812 | returns any error (non-zero return code) and if it does not, you can | 
|  | 813 | start using get_revision() to do the iteration. | 
|  | 814 | </p> | 
|  | 815 | </dd> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 816 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 817 | <code>get_revision</code> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 818 | </dt> | 
|  | 819 | <dd> | 
|  | 820 | <p> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 821 | Takes a pointer to a <code>rev_info</code> structure and iterates over it, | 
|  | 822 | returning a <code>struct commit *</code> each time you call it. The end of the | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 823 | revision list is indicated by returning a NULL pointer. | 
|  | 824 | </p> | 
|  | 825 | </dd> | 
| Junio C Hamano | 18b647e | 2012-04-24 22:16:19 | [diff] [blame] | 826 | <dt class="hdlist1"> | 
| Junio C Hamano | c14e6ad | 2014-10-31 20:25:53 | [diff] [blame] | 827 | <code>reset_revision_walk</code> | 
| Junio C Hamano | 18b647e | 2012-04-24 22:16:19 | [diff] [blame] | 828 | </dt> | 
|  | 829 | <dd> | 
|  | 830 | <p> | 
|  | 831 | Reset the flags used by the revision walking api. You can use | 
| Junio C Hamano | ce806e3 | 2013-08-01 20:28:10 | [diff] [blame] | 832 | this to do multiple sequential revision walks. | 
| Junio C Hamano | 18b647e | 2012-04-24 22:16:19 | [diff] [blame] | 833 | </p> | 
|  | 834 | </dd> | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 835 | </dl></div> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 836 | </div> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 837 | </div> | 
|  | 838 | <div class="sect1"> | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 839 | <h2 id="_data_structures">Data structures</h2> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 840 | <div class="sectionbody"> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 841 | <div class="paragraph"><p>Talk about <revision.h>, things like:</p></div> | 
|  | 842 | <div class="ulist"><ul> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 843 | <li> | 
|  | 844 | <p> | 
|  | 845 | two diff_options, one for path limiting, another for output; | 
|  | 846 | </p> | 
|  | 847 | </li> | 
|  | 848 | <li> | 
|  | 849 | <p> | 
| Junio C Hamano | 054ea08 | 2008-06-01 08:26:34 | [diff] [blame] | 850 | remaining functions; | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 851 | </p> | 
|  | 852 | </li> | 
| Junio C Hamano | 4604fe5 | 2008-09-19 06:37:10 | [diff] [blame] | 853 | </ul></div> | 
| Junio C Hamano | 103b572 | 2011-01-31 05:03:45 | [diff] [blame] | 854 | <div class="paragraph"><p>(Linus, JC, Dscho)</p></div> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 855 | </div> | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 856 | </div> | 
| Junio C Hamano | 9d97115 | 2012-12-19 00:43:11 | [diff] [blame] | 857 | </div> | 
| Junio C Hamano | 7bd050f | 2011-09-22 06:32:22 | [diff] [blame] | 858 | <div id="footnotes"><hr /></div> | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 859 | <div id="footer"> | 
|  | 860 | <div id="footer-text"> | 
| Junio C Hamano | 2ef0ba3 | 2018-01-26 23:13:53 | [diff] [blame] | 861 | Last updated | 
| Junio C Hamano | 944ce25 | 2018-05-30 22:25:26 | [diff] [blame] | 862 | 2018-01-27 08:11:04 JST | 
| Junio C Hamano | 3dac504 | 2007-12-15 08:40:54 | [diff] [blame] | 863 | </div> | 
|  | 864 | </div> | 
|  | 865 | </body> | 
|  | 866 | </html> |